A Method for Implementing Equational Theories as Logic Programs
نویسندگان
چکیده
Equational theories underly many elds of computing, including functional programming, symbolic algebra, theorem proving, term rewriting and constraint solving. In this paper we show a method for implementing many equational theories with a limited class of logic programs. We de ne regular equational theories, a useful class of theories, and illustrate with a number of examples how our method can be used in obtaining e cient implementations for them. The signi cance of our method is that: It is simple and easy to apply. Although executable, it supports separation of concerns between speci cation and implementation. Its class of logic programs execute with impressive e ciency using Prolog. It permits interesting compilation and optimization techniques that can improve execution e ciency still further. It o ers perspectives on term rewriting and functional programming evaluation strategies, how they can be compiled, and how they can be integrated with logic programming e ectively.
منابع مشابه
Conditional Equational Theories and Complete Sets of Transformations
The idea to combine the advantages of function and logic programming has attracted many researches. Their work ranges from the integration of existing languages over higher-order logic to equational logic languages, where logic programs are augmented with equational theories. Recently, it has been proposed to handle those equational theories by complete sets of transformations. These transforma...
متن کاملSolving Goals in Equational Languages
Solving equations in equational Horn-clause theories is a programming paradigm that combines logic programming and functional programming in a clean manner. Languages like EQLOG, SLOG and RITE, express programs as conditional rewrite rules and goals as equations to be solved. Procedures for completion of conditional equational theories, in a manner akin to that of Knuth and Bendix for unconditi...
متن کاملVerification of CRWL Programs with Rewriting Logic
We present a novel approach to the verification of functional-logic programs. For our verification purposes, equational reasoning is not valid due to the presence of non-deterministic and partial functions. Our approach transforms functionallogic programs into Maude theories and then uses the Rewriting Logic logical framework to verify properties of the transformed programs. We propose an induc...
متن کاملModelling theories of actions by Equational Logic Programs
A sound and complete approach for encoding the action description language A developed by M. Gelfond and V. Lifschitz in an equational logic program is given. Our results allow the comparison of the resource-oriented equational logic based approach and various other methods designed for reasoning about actions, most of them based on variants of the situation calculus, which were also related to...
متن کاملOptimization of Equational Logic Programs using Abstract Narrowing
Solving equations in equational theories is a relevant programming paradigm which integrates logic and equational programming into one unified framework. Efficient methods based on narrowing strategies to solve systems of equations have been devised. In this work, we define an abstract narrower for equational theories which can be used to obtain a finite description of the set of solutions. We ...
متن کامل